Performance of Machine Learning (ML) models depends on the quantity, diversity, and quality of training examples used to train the model. For example, to train an autonomous vehicle vision system to recognize, identify, and autonomously navigate an environment, the training examples must be diverse in content, realistic, and numerous. Currently, a method to achieve this goal includes manually labeling photos of real-world environments, but this method may be time consuming and limited to the dataset of real-world environments. Another method includes generating simulated environments from a simulator. However, images generated in such a manner may lack photorealism, which may result in domain adaptation issues. For example, a ML model may learn to identify an object, but the object it learns to identify may be a refined rendering of a synthetic object that does not appear the same in a real-world environment. To improve image generation and bridge the gap between simulated and real-world domains, some methods employ Generative Adversarial Networks (GAN). In general, GANs are ML models having two components, i) a generator, which generates images, and ii) a discriminator, which is tasked with differentiating between example real images and generated ones. Some current GAN systems attempt to learn a rendering function from scratch, which does not close the gap between real-world images and synthetic images.
Accordingly, a need exists for improved systems and methods for generating synthetic photorealistic images.